ISTQB Advanced Level Technical Test Analyst 試験に合格した学習法や感想 #JSTQB #ISTQB
こんにちは。AWS事業本部モダンアプリケーションコンサルティング部に所属している今泉(@bun76235104)です。
みなさんテストの設計していますか?
私はモダンアプリケーションコンサルティング部という部門で自身も手を動かしながらも、お客様が気持ちよく開発を手の内化していただくことをモチベーションに働いています。
そのため、改めてテストについて体系的に学習しようと思い、以前よりJSTQB 認定テスト技術者資格を受験していました。
今回はTechnical Test Analyst試験というテストを受験して合格することができたので、勉強方法やそもそもの受験方法などについても少し触れていきたいと思います。
Technical Test Analyst 試験とは
Technical Test Analyst 試験は ISTQB が提供する資格の一つです。
私が以前受験した Test Analyst と似ている名前ですが、期待される役割や学習するテスト設計技法も異なります。
私なりの理解を簡単にまとめると以下のような形になります。
Test Analyst | Technical Test Analyst | |
---|---|---|
ざっくり役割 | ビジネス面のことを考えてシステムの機能性や使用性などを見ていくテストのスペシャリスト | よりテック寄りであり開発者やアーキテクトなどに近い立場でシステムの信頼性やセキュリティなどを見ていくテストのスペシャリスト |
学習するテスト設計技法 | ブラックボックステスト技法(同値分割法、境界値分析、ペアワイズテストなど) | ホワイトボックステスト技法(ステートメントカバレッジ、ブランチカバレッジなど) |
日本語受験可否(2024年5月現在) | 可能 | 不可 |
備考 | QAエンジニアやテスト技術者が受けやすいテストだと思います | 開発者やアーキテクトが受けやすいテストだと思います |
Test Analyst 試験は JSTQBで試験が提供されているため、日本語での受験が可能ですが、Technical Test Analyst 試験は まだ提供されていないため、他の国の機関(ASTQBなど)で受験する必要があります。
私も英語で受験しましたが、英語自体はそこまで長くなく、平易な文章で書かれているため、英語が苦手な方でも受験しやすいと思います。
勉強方法
今回の勉強の方針
「英語も技術も両方伸ばせ!俺こそがインターナショナルなエンジニアだ!」という、ちょっとかわいそうな感じの方針としていました。
ただ受験するだけだとあまりおもしろくないので、以下のようなことを成果を意識しながら受験勉強することにしました。
- 平易で短めの技術関連の英語に対しての苦手意識をなくす
- ホワイトボックステストの技法を学んで、ライブラリやツールが出してくれる複雑度やカバレッジの指標を理解して、自分で計算できるようにする
以前受験した Test Analyst 試験ではブラックボックスなテスト技法などが多く出題され、QAエンジニアやテスト技術者の経験が少ない私には難しかったので、時間を書けてじっくり学習していくことにしていました。
今回は逆に私の開発者としての経験、ソリューションアーキテクトとしての経験が活かせそうだったので、英語を学ぶことに意識を向ける余地を感じて、このような方針にしました。
学習教材
最終的に利用した学習教材・サイトは以下のとおりです。
ISTQB 公式の提供物
- ISTQB Exam-Structure-Tables
- 試験の構成や出題される問題の割合が記載されています
- ISTQB-CTAL-TTA_Syllabus_V4.0.pdf
- シラバスです
- これを見ながら、わからない単元を日本語で調べて理解していました
- Sample Exam
- サンプル問題です
- Sample Exam - Answersも見ながら解いていきましょう
有志の方の受験記録
@まこっちゃんさんの貴重な日本語による受験記録です。
この記事の冒頭に私が出てくるからすすめているわけではなく、日本語の受験記録は本当に貴重です。
英語に不慣れな読者を見越して「受験をするまでの流れ」を記載くださっていて温かさを感じています。(なにかあるたびにこの記事を見ていました)
また、こちらの記事にも記載していただいている、秋山さんのNoteについても参考にさせていただきました。
Step.1 まずはISTQBのサイトで問題の傾向を把握
Test Analyst 試験と同様に、どのような分野がどのくらいの割合で出題されるのかを把握することから始めました。
ISTQB Exam-Structure-Tablesには、シラバスのどの単元で何点分の問題が出題されるかが記載されています。
Test Analyst 試験の際には、ブラックボックステストの設計技法だけで4割以上の問題が出題されていましたが、Technical Test Analyst のホワイトボックステスト技法はそこまで比重が高くありません。(まんべんなく出題される配点ですね)
ISTQB Exam-Structure-Tablesより引用
Chapter4 で学ぶ 「Technical Test Analyst が関わる品質特性」の部分などが出題される割合もそこそこあり、かつ理解しておけば解答できそうだなと感じたので、この辺りもしっかり学習していくことにしました。
Step.2 シラバスを読みながら1章ずつサンプル問題を解く
次に英語のシラバスを読みながら、1章ずつサンプル問題を解いていきました。
ただでさえ、不慣れな英語なので一気通貫で50ページ以上のシラバスを読んでいくにはあまりにも私の心は弱いので、1章ずつとしました。
これをしながら、「へぇimportant っていうより crucial っていう単語がよく使われいるな。意味合い的にはどうなんだろう?」などと、英語の学習もしていきました。
Zennのスクラップにまとめていく
シラバスをただ読むのでは(私の場合)頭に入ってこないので、「これは心に残ったぞ」という部分をZennのスクラップにまとめていきました。(Test Analyst 試験のときもやっていました)
ただテストを受けるだけでなく、受験結果をブログやLTで発表することを意識しながらメモしていきました。
特に「安全性が超大事なシステムではどのようなコードカバレッジを満たすべきか」という点に関する国際的な基準があることを知らなかったので、そのような点について他のサイトを調べながら学習していきました。
この学習方法は最近はじめたのですが、自分の学習の進捗を可視化できつつ、後ほど読み返したときに「あぁ。そういえばこのときに初めて知ったんだよなぁ」とエモくなれること請け合いなのでおすすめです。
Step.3 サンプル問題を3周する
シラバスを読み切る過程でサンプル問題を1週できるので、もう2週しながらすべての単元をまんべんなく解けるようにしていきました。
- カバレッジや Cyclomatic complexity を計算する問題
if
for
などの制御構文を見ながら、どんな理由で答えの数が導出されるのか理解する- 時折このような記事を見ながら理解を深めていく
- 循環的複雑度について #Java - Qiita
- 品質特性(Quality Characteristics)に関する問題
- シラバスのAppendix A に記載されている ISO/IEC 25010 の表を見ながら Technical Test Analyst がどのような特性に関わっていくかを都度確認する
- 私の場合「テック寄り」「アーキテクトやSRE寄りの仕事も Tech Test Analyst の仕事だよね」ということを意識すれば、ただの暗記より覚えやすかったです
受験までの流れ
申込方法
上でも紹介した @まこっちゃん
さんの「日本で、英語や他言語でISTQBの試験を受験する方法」を参考にしながら、ASTQB(AT*SQA)のサイトから受験を申し込みました。
オンライン試験の受験について
オンライン試験の申し込みにあたって、以下のページを読みながらオンライン試験の準備をしました。
オンライン試験の前に専用のソフトウェアのインストールが必要なので留意しましょう。(メールでも案内があります)
また政府発行の顔写真付きの身分証明書が必要とのことで、私の場合運転免許証を使いました(オンライン試験時にはカメラを使って身分証明書を提示する必要があります)
私のときには試験時間の10分前に専用のソフトウェアを起動して、試験監督の方とのやりとりを開始できるようになりました。
なお、オンライン試験の際には机の周りや部屋の中をカメラを介してチェックするため、試験前に部屋の整理をしておくことをおすすめします。
結果の確認
オンライン試験を受験し終えたら、その場で合否とスコアが表示されました。(すぐに結果がわかるのはとても良いですね)
私は日曜日の朝に受験したのですが、その日の夕方頃には詳細なスコアがメールで送られてきました。
また、以下のように AT*SQA のサイトにてバッジが表示されるようになりました。
受験した感想
- 英語の試験だから時間がかかると思いましたが、英語が短くて平易なので意外と時間が余りました
- 英語が母国語でない場合30分の時間延長が可能ですが、それがなくても大丈夫なくらいでした
- 開発者やソリューションアーキテクトとしての経験が活かせる分野がかなりあった
- 例えばサンプル問題において、ホワイトボックステストの問題を解く際に擬似コードをみるのですが、特に問題なく読めました
- また、例えば「信頼性を考慮した際に、どのようなアーキテクチャをどのようにするべきか?」といった観点の問題も、ソリューションアーキテクトとして考えていることが活かせます
- 総じて開発系の方にはとっつきやすい問題が多いと感じました
また、受験の結果以下のような成果を感じています。
- 英語のドキュメントを読むのに前より抵抗が少なくなった
- daily.dev | Where developers grow togetherにて、毎日英語の記事を読み始めました
- 今もスピードは遅いのですが、受験前より明らかに英語のテック記事を読むスピードが上がったと感じています
- ホワイトボックステスト技法について、何も知らない人に説明できるようになった
- 技法的な観点もそうですが、「ブラックボックス的な技法と比べるとどういう風に使われることが多いのか」や「命が関わるシステムの場合、どの基準のカバレッジを満たすべきか」について意見を言えるようになりました
総じて受験してみて本当に良かったと感じています。
なお、 Test Analyst, Test Manager, Technical Test Analyst の3試験に合格すると「Full Advanced Level Professional:テスト技術者資格Advanced Level 完全上級テスト技術者」の認定を取得できるとのことです。
2024 Japan AWS All Certifications Engineersのように、「どうせ認定試験をいくつかパスしているなら、英語でも頑張ってみようかな」となること請け合いなので、興味がある方はぜひチャレンジしてみてください。
以上、最後までお読みいただきありがとうございました。